home *** CD-ROM | disk | FTP | other *** search
/ BCI NET 2 / BCI NET 2.iso / archives / utilities / text / less-278.lha / less-278 / src.lha / source / less.man < prev    next >
Encoding:
Text File  |  1995-02-14  |  53.2 KB  |  1,519 lines

  1.  
  2.  
  3.  
  4. LESS(1)                  USER COMMANDS                    LESS(1)
  5.  
  6.  
  7.  
  8. NAME
  9.      less - opposite of more
  10.  
  11. SYNOPSIS
  12.      less -?
  13.      less -V
  14.      less [-[+]aBcCdeEfgGHiImMnNqQrsSuUw]
  15.           [-b _b_u_f_s] [-h _l_i_n_e_s] [-j _l_i_n_e] [-k _k_e_y_f_i_l_e]
  16.           [-{oO} _l_o_g_f_i_l_e] [-p _p_a_t_t_e_r_n] [-P _p_r_o_m_p_t] [-t _t_a_g]
  17.           [-T _t_a_g_s_f_i_l_e] [-x _t_a_b] [-y _l_i_n_e_s] [-[z] _l_i_n_e_s]
  18.           [+[+]_c_m_d] [_f_i_l_e_n_a_m_e]...
  19.  
  20.  
  21. DESCRIPTION
  22.      _L_e_s_s is a program similar to  _m_o_r_e  (1),  but  which  allows
  23.      backward  movement  in the file as well as forward movement.
  24.      Also, _l_e_s_s does not have  to  read  the  entire  input  file
  25.      before starting, so with large input files it starts up fas-
  26.      ter than text editors like _v_i (1).  _L_e_s_s  uses  termcap  (or
  27.      terminfo  on  some  systems),  so it can run on a variety of
  28.      terminals.  There is even limited support for hardcopy  ter-
  29.      minals.   (On  a  hardcopy  terminal,  lines which should be
  30.      printed at the top of the screen are prefixed with a caret.)
  31.  
  32.      Commands are based on both _m_o_r_e and _v_i. Commands may be pre-
  33.      ceded  by  a  decimal  number,  called N in the descriptions
  34.      below.  The number is used by some commands, as indicated.
  35.  
  36.  
  37. COMMANDS
  38.      In the following  descriptions,  ^X  means  control-X.   ESC
  39.      stands  for  the ESCAPE key; for example ESC-v means the two
  40.      character sequence "ESCAPE", then "v".
  41.  
  42.      h or H
  43.           Help: display a summary of these commands.  If you for-
  44.           get all the other commands, remember this one.
  45.  
  46.      SPACE or ^V or f or ^F
  47.           Scroll forward N lines, default one window (see  option
  48.           -z below).  If N is more than the screen size, only the
  49.           final screenful is displayed.   Warning:  some  systems
  50.           use ^V as a special literalization character.
  51.  
  52.      z    Like SPACE, but if N is specified, it becomes  the  new
  53.           window size.
  54.  
  55.      RETURN or ^N or e or ^E or j or ^J
  56.           Scroll forward N lines, default 1.  The entire N  lines
  57.           are displayed, even if N is more than the screen size.
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                                                 1
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. LESS(1)                  USER COMMANDS                    LESS(1)
  71.  
  72.  
  73.  
  74.      d or ^D
  75.           Scroll forward N lines, default one half of the  screen
  76.           size.   If  N  is specified, it becomes the new default
  77.           for subsequent d and u commands.
  78.  
  79.      b or ^B or ESC-v
  80.           Scroll backward N lines, default one window (see option
  81.           -z below).  If N is more than the screen size, only the
  82.           final screenful is displayed.
  83.  
  84.      w    Like ESC-v, but if N is specified, it becomes  the  new
  85.           window size.
  86.  
  87.      y or ^Y or ^P or k or ^K
  88.           Scroll backward N lines, default 1.  The entire N lines
  89.           are  displayed, even if N is more than the screen size.
  90.           Warning: some systems use ^Y as a special  job  control
  91.           character.
  92.  
  93.      u or ^U
  94.           Scroll backward N lines, default one half of the screen
  95.           size.   If  N  is specified, it becomes the new default
  96.           for subsequent d and u commands.
  97.  
  98.      r or ^R or ^L
  99.           Repaint the screen.
  100.  
  101.      R    Repaint the  screen,  discarding  any  buffered  input.
  102.           Useful  if  the  file  is  changing  while  it is being
  103.           viewed.
  104.  
  105.      F    Scroll forward, and keep trying to read when the end of
  106.           file  is  reached.  Normally this command would be used
  107.           when already at the end of the file.  It is  a  way  to
  108.           monitor the tail of a file which is growing while it is
  109.           being viewed.  (The behavior is similar  to  the  "tail
  110.           -f" command.)
  111.  
  112.      g or < or ESC-<
  113.           Go to line N in  the  file,  default  1  (beginning  of
  114.           file).  (Warning: this may be slow if N is large.)
  115.  
  116.      G or > or ESC->
  117.           Go to line N in the file, default the end of the  file.
  118.           (Warning:  this  may  be slow if N is large, or if N is
  119.           not specified and standard input, rather than  a  file,
  120.           is being read.)
  121.  
  122.      p or %
  123.           Go to a position N percent into the file.  N should  be
  124.           between  0  and  100.  (This works if standard input is
  125.           being read, but only if _l_e_s_s has already  read  to  the
  126.  
  127.  
  128.  
  129.                                                                 2
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. LESS(1)                  USER COMMANDS                    LESS(1)
  137.  
  138.  
  139.  
  140.           end  of  the  file.   It is always fast, but not always
  141.           useful.)
  142.  
  143.      {    If a  left  curly  bracket  appears  in  the  top  line
  144.           displayed  on  the screen, the { command will go to the
  145.           matching right curly bracket.  The matching right curly
  146.           bracket is positioned on the bottom line of the screen.
  147.           If there is more than one left curly bracket on the top
  148.           line,  a  number  N  may  be  used  to specify the N-th
  149.           bracket on the line.
  150.  
  151.      }    If a right curly bracket appears  in  the  bottom  line
  152.           displayed  on  the screen, the } command will go to the
  153.           matching left curly bracket.  The matching  left  curly
  154.           bracket  is  positioned  on the top line of the screen.
  155.           If there is more than one right curly  bracket  on  the
  156.           top  line,  a  number N may be used to specify the N-th
  157.           bracket on the line.
  158.  
  159.      (    Like {, but applies to parentheses  rather  than  curly
  160.           brackets.
  161.  
  162.      )    Like }, but applies to parentheses  rather  than  curly
  163.           brackets.
  164.  
  165.      [    Like {, but applies  to  square  brackets  rather  than
  166.           curly brackets.
  167.  
  168.      ]    Like }, but applies  to  square  brackets  rather  than
  169.           curly brackets.
  170.  
  171.      ESC-^F
  172.           Followed by two characters, acts like {, but  uses  the
  173.           two  characters  as  open  and  close brackets, respec-
  174.           tively.  For example, "ESC ^F < >" could be used to  go
  175.           forward  to  the  >  which  matches  the  <  in the top
  176.           displayed line.
  177.  
  178.      ESC-^B
  179.           Followed by two characters, acts like }, but  uses  the
  180.           two  characters  as  open  and  close brackets, respec-
  181.           tively.  For example, "ESC ^B < >" could be used to  go
  182.           backward  to  the  <  which matches the > in the bottom
  183.           displayed line.
  184.  
  185.      m    Followed by any lowercase  letter,  marks  the  current
  186.           position with that letter.
  187.  
  188.      '    (Single  quote.)  Followed  by  any  lowercase  letter,
  189.           returns  to  the  position  which was previously marked
  190.           with that letter.  Followed by  another  single  quote,
  191.           returns  to  the  position  at  which  the last "large"
  192.  
  193.  
  194.  
  195.                                                                 3
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202. LESS(1)                  USER COMMANDS                    LESS(1)
  203.  
  204.  
  205.  
  206.           movement command was executed.  Followed by a ^  or  $,
  207.           jumps to the beginning or end of the file respectively.
  208.           Marks are preserved when a new file is examined, so the
  209.           ' command can be used to switch between input files.
  210.  
  211.      ^X^X Same as single quote.
  212.  
  213.      /pattern
  214.           Search forward in the file for the N-th line containing
  215.           the  pattern.  N defaults to 1.  The pattern is a regu-
  216.           lar expression, as recognized by _e_d. The search  starts
  217.           at  the  second  line  displayed (but see the -a and -j
  218.           options, which change this).
  219.  
  220.           Certain characters are special if entered at the begin-
  221.           ning  of  the  pattern;  they modify the type of search
  222.           rather than become part of the pattern:
  223.  
  224.           !    Search for lines which do NOT match the pattern.
  225.  
  226.           *    Search multiple files.  That  is,  if  the  search
  227.                reaches  the end of the current file without find-
  228.                ing a match, the search continues in the next file
  229.                in the command line list.
  230.  
  231.           @    Begin the search at the first line  of  the  first
  232.                file  in the command line list, regardless of what
  233.                is currently displayed on the screen or  the  set-
  234.                tings of the -a or -j options.
  235.  
  236.      ?pattern
  237.           Search backward in the file for the N-th line  contain-
  238.           ing the pattern.  The search starts at the line immedi-
  239.           ately before the top line displayed.
  240.  
  241.           Certain characters are special as in the / command:
  242.  
  243.           !    Search for lines which do NOT match the pattern.
  244.  
  245.           *    Search multiple files.  That  is,  if  the  search
  246.                reaches  the beginning of the current file without
  247.                finding a match, the search continues in the  pre-
  248.                vious file in the command line list.
  249.  
  250.           @    Begin the search at the last line of the last file
  251.                in  the  command  line list, regardless of what is
  252.                currently displayed on the screen or the  settings
  253.                of the -a or -j options.
  254.  
  255.      ESC-/pattern
  256.           Same as "/*".
  257.  
  258.  
  259.  
  260.  
  261.                                                                 4
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268. LESS(1)                  USER COMMANDS                    LESS(1)
  269.  
  270.  
  271.  
  272.      ESC-?pattern
  273.           Same as "?*".
  274.  
  275.      n    Repeat previous search, for N-th  line  containing  the
  276.           last  pattern.   If the previous search was modified by
  277.           !, the search is made for the N-th line NOT  containing
  278.           the pattern.  If the previous search was modified by *,
  279.           the search continues in the next (or previous) file  if
  280.           not  satisfied in the current file.  There is no effect
  281.           if the previous search was modified by @.
  282.  
  283.      N    Repeat previous search, but in the reverse direction.
  284.  
  285.      ESC-n
  286.           Repeat previous search, but crossing  file  boundaries.
  287.           The  effect  is as if the previous search were modified
  288.           by *.
  289.  
  290.      ESC-N
  291.           Repeat previous search, but in  the  reverse  direction
  292.           and crossing file boundaries.
  293.  
  294.      ESC-u
  295.           Undo search highlighting.   Turn  off  highlighting  of
  296.           strings   matching   the  current  search  pattern.  If
  297.           highlighting is already off because of a previous ESC-u
  298.           command, turn highlighting back on.  Any search command
  299.           will also turn highlighting back on.  (Highlighting can
  300.           also  be disabled by toggling the -G flag; in that case
  301.           search commands do not turn highlighting back on.)
  302.  
  303.      :e [filename]
  304.           Examine a new file.  If the filename  is  missing,  the
  305.           "current"  file (see the :n and :p commands below) from
  306.           the list of files in the command line  is  re-examined.
  307.           A  percent  sign (%) in the filename is replaced by the
  308.           name of the current file. A pound sign (#) is  replaced
  309.           by  the  name  of  the  previously  examined file.  The
  310.           filename is inserted into  the  command  line  list  of
  311.           files  so  that  it can be seen by subsequent :n and :p
  312.           commands.  If the filename consists of  several  files,
  313.           they  are  all  inserted into the list of files and the
  314.           first one is examined.
  315.  
  316.      ^X^V or E
  317.           Same as :e.  Warning: some systems use ^V as a  special
  318.           literalization character.
  319.  
  320.      :n   Examine the next file (from the list of files given  in
  321.           the  command line).  If a number N is specified, the N-
  322.           th next file is examined.
  323.  
  324.  
  325.  
  326.  
  327.                                                                 5
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334. LESS(1)                  USER COMMANDS                    LESS(1)
  335.  
  336.  
  337.  
  338.      :p   Examine the previous file in the command line list.  If
  339.           a  number  N  is  specified,  the N-th previous file is
  340.           examined.
  341.  
  342.      :x   Examine the first file in the command line list.  If  a
  343.           number  N  is  specified,  the N-th file in the list is
  344.           examined.
  345.  
  346.      = or ^G or :f
  347.           Prints some information about the  file  being  viewed,
  348.           including  its name and the line number and byte offset
  349.           of the bottom line being displayed.   If  possible,  it
  350.           also prints the length of the file, the number of lines
  351.           in the file and the percent of the file above the  last
  352.           displayed line.
  353.  
  354.      -    Followed by one of the command line option letters (see
  355.           below), this will change the setting of that option and
  356.           print a message describing the  new  setting.   If  the
  357.           option  letter  has a numeric value (such as -b or -h),
  358.           or a string value (such as -P or -t), a new  value  may
  359.           be entered after the option letter.  If no new value is
  360.           entered, a message describing the  current  setting  is
  361.           printed and nothing is changed.
  362.  
  363.      -+   Followed by one of the command line option letters (see
  364.           below),  this will reset the option to its default set-
  365.           ting and print a message describing  the  new  setting.
  366.           (The  "-+_X" command does the same thing as "-+_X" on the
  367.           command line.) This does  not  work  for  string-valued
  368.           options.
  369.  
  370.      --   Followed by one of the command line option letters (see
  371.           below), this will reset the option to the "opposite" of
  372.           its default setting and print a message describing  the
  373.           new setting.  (The "--_X" command does the same thing as
  374.           "-_X" on the command  line.)  This  does  not  work  for
  375.           numeric or string-valued options.
  376.  
  377.      _    (Underscore.) Followed  by  one  of  the  command  line
  378.           option  letters  (see below), this will print a message
  379.           describing the current setting  of  that  option.   The
  380.           setting of the option is not changed.
  381.  
  382.      +cmd Causes the specified cmd to be executed each time a new
  383.           file  is examined.  For example, +G causes _l_e_s_s to ini-
  384.           tially display each file starting  at  the  end  rather
  385.           than the beginning.
  386.  
  387.      V    Prints the version number of _l_e_s_s being run.
  388.  
  389.  
  390.  
  391.  
  392.  
  393.                                                                 6
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400. LESS(1)                  USER COMMANDS                    LESS(1)
  401.  
  402.  
  403.  
  404.      q or :q or :Q or ZZ
  405.           Exits _l_e_s_s.
  406.  
  407.      The following three  commands  may  or  may  not  be  valid,
  408.      depending on your particular installation.
  409.  
  410.      v    Invokes an  editor  to  edit  the  current  file  being
  411.           viewed.  The editor is taken from the environment vari-
  412.           able VISUAL if defined, or  EDITOR  if  VISUAL  is  not
  413.           defined, or defaults to "vi" if neither VISUAL nor EDI-
  414.           TOR is defined.  See also the  discussion  of  LESSEDIT
  415.           under the section on PROMPTS below.
  416.  
  417.      ! shell-command
  418.           Invokes a shell to run the shell-command given.  A per-
  419.           cent sign (%) in the command is replaced by the name of
  420.           the current file. A pound sign (#) is replaced  by  the
  421.           name of the previously examined file.  "!!" repeats the
  422.           last shell command.  "!" with no shell  command  simply
  423.           invokes a shell.  In all cases, the shell is taken from
  424.           the environment variable SHELL, or defaults to "sh".
  425.  
  426.      | <m> shell-command
  427.           <m> represents any mark letter.  Pipes a section of the
  428.           input  file to the given shell command.  The section of
  429.           the file to be piped is between the first line  on  the
  430.           current  screen  and the position marked by the letter.
  431.           <m> may also be ^ or $ to indicate beginning or end  of
  432.           file respectively.  If <m> is . or newline, the current
  433.           screen is piped.
  434.  
  435. OPTIONS
  436.      Command line options are described below.  Most options  may
  437.      be changed while _l_e_s_s is running, via the "-" command.
  438.  
  439.      Options are also taken from the environment variable "LESS".
  440.      For  example,  to avoid typing "less -options ..." each time
  441.      _l_e_s_s is invoked, you might tell _c_s_h:
  442.  
  443.      setenv LESS "-options"
  444.  
  445.      or if you use _s_h:
  446.  
  447.      LESS="-options"; export LESS
  448.  
  449.      The environment variable is parsed before the command  line,
  450.      so  command line options override the LESS environment vari-
  451.      able.  If an option appears in the LESS variable, it can  be
  452.      reset  to  its  default on the command line by beginning the
  453.      command line option with "-+".
  454.  
  455.      A dollar sign ($) may be used to signal the end of an option
  456.  
  457.  
  458.  
  459.                                                                 7
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466. LESS(1)                  USER COMMANDS                    LESS(1)
  467.  
  468.  
  469.  
  470.      string.   This  is  important only for options like -P which
  471.      take a following string.
  472.  
  473.      -?   This option displays a summary of the commands accepted
  474.           by _l_e_s_s (the same as the h command).  If this option is
  475.           given, all other options are ignored,  and  _l_e_s_s  exits
  476.           after  the  help  screen  is viewed.  (Depending on how
  477.           your shell interprets the  question  mark,  it  may  be
  478.           necessary to quote the question mark, thus: "-\?".)
  479.  
  480.      -a   Causes searches to start after the last line  displayed
  481.           on the screen, thus skipping all lines displayed on the
  482.           screen.  By default, searches start at the second  line
  483.           on the screen (or after the last found line; see the -j
  484.           option).
  485.  
  486.      -b_n  Specifies the number of buffers _l_e_s_s will use for  each
  487.           file.   Buffers  are  1K, and by default 10 buffers are
  488.           used for each file (except if the file is a  pipe;  see
  489.           the  -B  option).   The  number _n specifies a different
  490.           number of buffers to use.
  491.  
  492.      -B   By default, when data is read from a pipe, buffers  are
  493.           allocated  automatically  as needed.  If a large amount
  494.           of data is read from the pipe, this can cause  a  large
  495.           amount  of  memory to be allocated.  The -B option dis-
  496.           ables this automatic allocation of buffers  for  pipes,
  497.           so  that only the number of buffers specified by the -b
  498.           option are used.  Warning: use  of  -B  can  result  in
  499.           erroneous  display, since only the most recently viewed
  500.           part of the file is kept in memory; any earlier data is
  501.           lost.
  502.  
  503.      -c   Causes full screen repaints to be painted from the  top
  504.           line  down.   By default, full screen repaints are done
  505.           by scrolling from the bottom of the screen.
  506.  
  507.      -C   The -C option is like -c, but  the  screen  is  cleared
  508.           before it is repainted.
  509.  
  510.      -d   The -d option suppresses  the  error  message  normally
  511.           displayed  if the terminal is dumb; that is, lacks some
  512.           important capability, such as the ability to clear  the
  513.           screen or scroll backward.  The -d option does not oth-
  514.           erwise change the behavior of _l_e_s_s on a dumb terminal).
  515.  
  516.      -Dx_c_o_l_o_r
  517.           [MS-DOS only] Sets the color of the text displayed.   x
  518.           is  a  single  character which selects the type of text
  519.           whose color is being set: n=normal, s=standout, d=bold,
  520.           u=underlined,  k=blink.   _c_o_l_o_r  is  a  pair of numbers
  521.           separated by a period. The  first  number  selects  the
  522.  
  523.  
  524.  
  525.                                                                 8
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532. LESS(1)                  USER COMMANDS                    LESS(1)
  533.  
  534.  
  535.  
  536.           foreground  color and the second selects the background
  537.           color of the text.  A single number _N is  the  same  as
  538.           _N._0.
  539.  
  540.      -e   Causes _l_e_s_s to automatically exit the  second  time  it
  541.           reaches  end-of-file.  By default, the only way to exit
  542.           _l_e_s_s is via the "q" command.
  543.  
  544.      -E   Causes _l_e_s_s to automatically exit  the  first  time  it
  545.           reaches end-of-file.
  546.  
  547.      -f   Forces non-regular files to be opened.  (A  non-regular
  548.           file  is  a  directory  or a device special file.) Also
  549.           suppresses the warning message when a  binary  file  is
  550.           opened.   By  default,  _l_e_s_s  will  refuse to open non-
  551.           regular files.
  552.  
  553.      -g   Normally, _l_e_s_s will highlight ALL strings  which  match
  554.           the  last  search  command.   The  -g flag changes this
  555.           behavior to highlight only the particular string  which
  556.           was  found  by the last search command.  This can cause
  557.           _l_e_s_s to run somewhat faster than the default.
  558.  
  559.      -G   The -G flag  suppresses  all  highlighting  of  strings
  560.           found by search commands.
  561.  
  562.      -h_n  Specifies a maximum number of lines to scroll backward.
  563.           If  it  is  necessary  to  scroll  backward more than _n
  564.           lines, the screen is repainted in a  forward  direction
  565.           instead.  (If the terminal does not have the ability to
  566.           scroll backward, -h0 is implied.)
  567.  
  568.      -i   Causes searches to ignore case; that is, uppercase  and
  569.           lowercase  are  considered  identical.   This option is
  570.           ignored if any uppercase letters appear in  the  search
  571.           pattern;  in  other words, if a pattern contains upper-
  572.           case letters, then that search does not ignore case.
  573.  
  574.      -I   Like -i, but searches ignore case even if  the  pattern
  575.           contains uppercase letters.
  576.  
  577.      -j_n  Specifies a line on the screen where the "target"  line
  578.           is  to be positioned.  A target line is the object of a
  579.           text search, tag search, jump to a line number, jump to
  580.           a  file  percentage, or jump to a marked position.  The
  581.           screen line is specified by a number: the top  line  on
  582.           the  screen is 1, the next is 2, and so on.  The number
  583.           may be negative to specify a line relative to the  bot-
  584.           tom of the screen: the bottom line on the screen is -1,
  585.           the second to the bottom is -2, and so on.  If  the  -j
  586.           option  is used, searches begin at the line immediately
  587.           after the target line.  For example, if "-j4" is  used,
  588.  
  589.  
  590.  
  591.                                                                 9
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598. LESS(1)                  USER COMMANDS                    LESS(1)
  599.  
  600.  
  601.  
  602.           the  target  line  is the fourth line on the screen, so
  603.           searches begin at the fifth line on the screen.
  604.  
  605.      -k_f_i_l_e_n_a_m_e
  606.           Causes _l_e_s_s to open and interpret the named file  as  a
  607.           _l_e_s_s_k_e_y  (1)  file.   Multiple -k options may be speci-
  608.           fied.  If a file called .less exists in the user's home
  609.           directory, this file is also used as a _l_e_s_s_k_e_y file.
  610.  
  611.      -m   Causes _l_e_s_s to prompt verbosely (like _m_o_r_e),  with  the
  612.           percent into the file.  By default, _l_e_s_s prompts with a
  613.           colon.
  614.  
  615.      -M   Causes _l_e_s_s to prompt even more verbosely than _m_o_r_e.
  616.  
  617.      -n   Suppresses line numbers.   The  default  (to  use  line
  618.           numbers)  may  cause  _l_e_s_s  to  run more slowly in some
  619.           cases,  especially  with  a  very  large  input   file.
  620.           Suppressing  line  numbers  with the -n flag will avoid
  621.           this problem.   Using  line  numbers  means:  the  line
  622.           number  will  be displayed in the verbose prompt and in
  623.           the = command, and the v command will pass the  current
  624.           line  number  to the editor (see also the discussion of
  625.           LESSEDIT in PROMPTS below).
  626.  
  627.      -N   Causes a line number to be displayed at  the  beginning
  628.           of each line in the display.
  629.  
  630.      -o_f_i_l_e_n_a_m_e
  631.           Causes _l_e_s_s to copy its input to the named file  as  it
  632.           is being viewed.  This applies only when the input file
  633.           is a pipe, not an ordinary file.  If the  file  already
  634.           exists, _l_e_s_s will ask for confirmation before overwrit-
  635.           ing it.
  636.  
  637.      -O_f_i_l_e_n_a_m_e
  638.           The -O option is like -o,  but  it  will  overwrite  an
  639.           existing file without asking for confirmation.
  640.  
  641.           If no log file  has  been  specified,  the  -o  and  -O
  642.           options  can  be used from within _l_e_s_s to specify a log
  643.           file.  Without a file name, they will simply report the
  644.           name of the log file.  The "s" command is equivalent to
  645.           specifying -o from within _l_e_s_s.
  646.  
  647.      -p_p_a_t_t_e_r_n
  648.           The -p option on the  command  line  is  equivalent  to
  649.           specifying  +/_p_a_t_t_e_r_n;  that is, it tells _l_e_s_s to start
  650.           at the first occurrence of _p_a_t_t_e_r_n in the file.
  651.  
  652.      -P_p_r_o_m_p_t
  653.           Provides a way to tailor the  three  prompt  styles  to
  654.  
  655.  
  656.  
  657.                                                                10
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664. LESS(1)                  USER COMMANDS                    LESS(1)
  665.  
  666.  
  667.  
  668.           your own preference.  This option would normally be put
  669.           in the LESS environment  variable,  rather  than  being
  670.           typed  in  with each _l_e_s_s command.  Such an option must
  671.           either be the last option in the LESS variable,  or  be
  672.           terminated  by  a dollar sign.  -P followed by a string
  673.           changes the default (short) prompt to that string.  -Pm
  674.           changes  the  medium (-m) prompt to the string, and -PM
  675.           changes the long (-M) prompt.  Also,  -P=  changes  the
  676.           message  printed  by the = command to the given string.
  677.           All prompt strings consist of a sequence of letters and
  678.           special  escape  sequences.  See the section on PROMPTS
  679.           for more details.
  680.  
  681.      -q   Causes moderately "quiet" operation: the terminal  bell
  682.           is  not  rung  if an attempt is made to scroll past the
  683.           end of the file or before the beginning  of  the  file.
  684.           If  the  terminal  has  a  "visual  bell",  it  is used
  685.           instead.  The  bell  will  be  rung  on  certain  other
  686.           errors,  such  as  typing  an  invalid  character.  The
  687.           default is to ring the terminal bell in all such cases.
  688.  
  689.      -Q   Causes totally "quiet" operation: the terminal bell  is
  690.           never rung.
  691.  
  692.      -r   Causes "raw" control characters to be  displayed.   The
  693.           default  is  to  display  control  characters using the
  694.           caret notation; for example, a control-A (octal 001) is
  695.           displayed  as "^A".  Warning: when the -r flag is used,
  696.           _l_e_s_s cannot keep track of the actual appearance of  the
  697.           screen  (since  this depends on how the screen responds
  698.           to each type  of  control  character).   Thus,  various
  699.           display  problems  may result, such as long lines being
  700.           split in the wrong place.
  701.  
  702.      -s   Causes consecutive blank lines to be  squeezed  into  a
  703.           single  blank  line.  This is useful when viewing _n_r_o_f_f
  704.           output.
  705.  
  706.      -S   Causes lines longer than the screen width to be chopped
  707.           rather  than  folded.  That is, the remainder of a long
  708.           line is simply discarded.  The default is to fold  long
  709.           lines; that is, display the remainder on the next line.
  710.  
  711.      -t_t_a_g
  712.           The -t option, followed immediately by a TAG, will edit
  713.           the  file containing that tag.  For this to work, there
  714.           must be a file called "tags" in the current  directory,
  715.           which  was  previously  built by the _c_t_a_g_s (1) command.
  716.           This option may also  be  specified  from  within  _l_e_s_s
  717.           (using the - command) as a way of examining a new file.
  718.           The command ":t" is equivalent to  specifying  -t  from
  719.           within _l_e_s_s.
  720.  
  721.  
  722.  
  723.                                                                11
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730. LESS(1)                  USER COMMANDS                    LESS(1)
  731.  
  732.  
  733.  
  734.      -T_t_a_g_s_f_i_l_e
  735.           Specifies a tags file to be used instead of "tags".
  736.  
  737.      -u   Causes backspaces and carriage returns to be treated as
  738.           printable  characters;  that  is,  they are sent to the
  739.           terminal when they appear in the input.
  740.  
  741.      -U   Causes backspaces and carriage returns to be treated as
  742.           control characters; that is, they are handled as speci-
  743.           fied by the -r option.
  744.  
  745.           By default, if neither -u nor -U is  given,  backspaces
  746.           which  appear  adjacent  to an underscore character are
  747.           treated specially: the  underlined  text  is  displayed
  748.           using  the  terminal's hardware underlining capability.
  749.           Also, backspaces which  appear  between  two  identical
  750.           characters  are  treated specially: the overstruck text
  751.           is printed using the terminal's hardware boldface capa-
  752.           bility.   Other  backspaces are deleted, along with the
  753.           preceding character.  Carriage returns immediately fol-
  754.           lowed by a newline are deleted.  Other carriage returns
  755.           are handled as specified by the -r option.  Text  which
  756.           is overstruck or underlined can be searched for if nei-
  757.           ther -u nor -U is in effect.
  758.  
  759.      -V   Displays the version number of _l_e_s_s.
  760.  
  761.      -w   Causes blank lines to be used to represent  lines  past
  762.           the end of the file.  By default, a tilde character (~)
  763.           is used.
  764.  
  765.      -x_n  Sets tab stops every _n positions.  The default for _n is
  766.           8.
  767.  
  768.      -X   Disables sending the termcap initialization and  deini-
  769.           tialization strings to the terminal.  This is sometimes
  770.           desirable if the deinitialization string does something
  771.           unnecessary, like clearing the screen.
  772.  
  773.      -y_n  Specifies a maximum number of lines to scroll  forward.
  774.           If it is necessary to scroll forward more than _n lines,
  775.           the screen is repainted instead.  The -c or  -C  option
  776.           may  be  used  to repaint from the top of the screen if
  777.           desired.   By  default,  any  forward  movement  causes
  778.           scrolling.
  779.  
  780.      -[z]_n
  781.           Changes the default scrolling window size to  _n  lines.
  782.           The default is one screenful.  The z and w commands can
  783.           also be used to change the window size.  The "z" may be
  784.           omitted for compatibility with _m_o_r_e. If the number _n is
  785.           negative, it indicates _n lines less  than  the  current
  786.  
  787.  
  788.  
  789.                                                                12
  790.  
  791.  
  792.  
  793.  
  794.  
  795.  
  796. LESS(1)                  USER COMMANDS                    LESS(1)
  797.  
  798.  
  799.  
  800.           screen  size.   For example, if the screen is 24 lines,
  801.           -_z-_4 sets the scrolling window to  20  lines.   If  the
  802.           screen  is  resized  to  40 lines, the scrolling window
  803.           automatically changes to 36 lines.
  804.  
  805.      +    If a command line option begins with +,  the  remainder
  806.           of  that  option  is  taken to be an initial command to
  807.           _l_e_s_s. For example, +G tells _l_e_s_s to start at the end of
  808.           the  file rather than the beginning, and +/xyz tells it
  809.           to start at the first occurrence of "xyz" in the  file.
  810.           As a special case, +<number> acts like +<number>g; that
  811.           is, it starts the display at the specified line  number
  812.           (however,  see the caveat under the "g" command above).
  813.           If the option  starts  with  ++,  the  initial  command
  814.           applies  to every file being viewed, not just the first
  815.           one.  The + command described previously  may  also  be
  816.           used  to  set  (or change) an initial command for every
  817.           file.
  818.  
  819.  
  820. LINE EDITING
  821.      When entering command line at the bottom of the screen  (for
  822.      example, a filename for the :e command, or the pattern for a
  823.      search command), certain keys can be used to manipulate  the
  824.      command  line.   Most  commands  have an alternate form in [
  825.      brackets ] which can be used if a key does not  exist  on  a
  826.      particular keyboard. (The bracketed forms do not work in the
  827.      MS-DOS version.) Any of these special keys  may  be  entered
  828.      literally  by  preceding  it  with  the "literal" character,
  829.      either ^V or ^A.  A backslash itself  may  also  be  entered
  830.      literally by entering two backslashes.
  831.  
  832.      LEFTARROW [ ESC-h ]
  833.           Move the cursor one space to the left.
  834.  
  835.      RIGHTARROW [ ESC-l ]
  836.           Move the cursor one space to the right.
  837.  
  838.      ^LEFTARROW [ ESC-b or ESC-LEFTARROW ]
  839.           (That is, CONTROL and LEFTARROW  simultaneously.)  Move
  840.           the cursor one word to the left.
  841.  
  842.      ^RIGHTARROW [ ESC-w or ESC-RIGHTARROW ]
  843.           (That is, CONTROL and RIGHTARROW simultaneously.)  Move
  844.           the cursor one word to the right.
  845.  
  846.      HOME [ ESC-0 ]
  847.           Move the cursor to the beginning of the line.
  848.  
  849.      END [ ESC-$ ]
  850.           Move the cursor to the end of the line.
  851.  
  852.  
  853.  
  854.  
  855.                                                                13
  856.  
  857.  
  858.  
  859.  
  860.  
  861.  
  862. LESS(1)                  USER COMMANDS                    LESS(1)
  863.  
  864.  
  865.  
  866.      BACKSPACE
  867.           Delete the character to the left of the cursor, or can-
  868.           cel the command if the command line is empty.
  869.  
  870.      DELETE or [ ESC-x ]
  871.           Delete the character under the cursor.
  872.  
  873.      ^BACKSPACE [ ESC-BACKSPACE ]
  874.           (That is, CONTROL and BACKSPACE simultaneously.) Delete
  875.           the word to the left of the cursor.
  876.  
  877.      ^DELETE [ ESC-X or ESC-DELETE ]
  878.           (That is, CONTROL and  DELETE  simultaneously.)  Delete
  879.           the word under the cursor.
  880.  
  881.      UPARROW [ ESC-k ]
  882.           Retrieve the previous command line.
  883.  
  884.      DOWNARROW [ ESC-j ]
  885.           Retrieve the next command line.
  886.  
  887.      TAB  Complete the partial filename to the left of  the  cur-
  888.           sor.   If  it matches more than one filename, the first
  889.           match is entered into the command line.  Repeated  TABs
  890.           will cycle thru the other matching filenames.
  891.  
  892.      BACKTAB [ ESC-TAB ]
  893.           Like, TAB, but cycles in the reverse direction thru the
  894.           matching filenames.
  895.  
  896.      ^L   Complete the partial filename to the left of  the  cur-
  897.           sor.  If it matches more than one filename, all matches
  898.           are entered into the command line (if they fit).
  899.  
  900.      ^U (Unix) or ESC (MS-DOS)
  901.           Delete the entire command line, or cancel  the  command
  902.           if the command line is empty.  If you have changed your
  903.           line-kill character in Unix to something other than ^U,
  904.           that character is used instead of ^U.
  905.  
  906.  
  907. KEY BINDINGS
  908.      You may define your own _l_e_s_s commands by using  the  program
  909.      _l_e_s_s_k_e_y  (1)  to  create  a file called ".less" in your home
  910.      directory.  This file specifies a set of command keys and an
  911.      action  associated  with each key.  You may also use _l_e_s_s_k_e_y
  912.      to change the line-editing keys (see LINE EDITING).  See the
  913.      _l_e_s_s_k_e_y manual page for more details.
  914.  
  915.  
  916. INPUT PREPROCESSOR
  917.      You may define an "input preprocessor" for _l_e_s_s. Before _l_e_s_s
  918.  
  919.  
  920.  
  921.                                                                14
  922.  
  923.  
  924.  
  925.  
  926.  
  927.  
  928. LESS(1)                  USER COMMANDS                    LESS(1)
  929.  
  930.  
  931.  
  932.      opens  a  file,  it  first  gives  your input preprocessor a
  933.      chance to modify the  way  the  contents  of  the  file  are
  934.      displayed.   An  input  preprocessor is simply an executable
  935.      program (or shell script), which writes the contents of  the
  936.      file  to a different file, called the replacement file.  The
  937.      contents of the replacement file are then displayed in place
  938.      of  the  contents  of  the  original file.  However, it will
  939.      appear to the user as if the original file is  opened;  that
  940.      is,  _l_e_s_s  will display the original filename as the name of
  941.      the current file.
  942.  
  943.      An input preprocessor receives one  command  line  argument,
  944.      the  original  filename,  as entered by the user.  It should
  945.      create the replacement file, and when  finished,  print  the
  946.      name of the replacement file to its standard output.  If the
  947.      input preprocessor does not output a  replacement  filename,
  948.      _l_e_s_s  uses  the original file, as normal.  The input prepro-
  949.      cessor is not called when viewing standard input.  To set up
  950.      an input preprocessor, set the LESSOPEN environment variable
  951.      to a command line which will invoke your input preprocessor.
  952.      This  command  line  should  include  one  occurrence of the
  953.      string "%s", which will be replaced by the filename when the
  954.      input preprocessor command is invoked.
  955.  
  956.      When _l_e_s_s closes a file opened in such a way, it  will  call
  957.      another  program,  called the input postprocessor, which may
  958.      perform any desired clean-up action (such  as  deleting  the
  959.      replacement   file   created  by  LESSOPEN).   This  program
  960.      receives two command line arguments, the  original  filename
  961.      as  entered  by  the  user,  and the name of the replacement
  962.      file.  To set up an input postprocessor, set  the  LESSCLOSE
  963.      environment  variable  to  a  command line which will invoke
  964.      your input postprocessor.  It may include two occurrences of
  965.      the  string  "%s";  the  first is replaced with the original
  966.      name of the file  and  the  second  with  the  name  of  the
  967.      replacement file, which was output by LESSOPEN.
  968.  
  969.      For example, on many Unix systems, these  two  scripts  will
  970.      allow  you to keep files in compressed format, but still let
  971.      _l_e_s_s view them directly:
  972.  
  973.      lessopen.sh:
  974.           #! /bin/sh
  975.           case "$1" in
  976.           *.Z) uncompress -c $1  >/tmp/less.$$  2>/dev/null
  977.                if [ -s /tmp/less.$$ ]; then
  978.                     echo /tmp/less.$$
  979.                else
  980.                     rm -f /tmp/less.$$
  981.                fi
  982.                ;;
  983.           esac
  984.  
  985.  
  986.  
  987.                                                                15
  988.  
  989.  
  990.  
  991.  
  992.  
  993.  
  994. LESS(1)                  USER COMMANDS                    LESS(1)
  995.  
  996.  
  997.  
  998.      lessclose.sh:
  999.           #! /bin/sh
  1000.           rm $2
  1001.  
  1002.      To use these scripts, put them both where they can  be  exe-
  1003.      cuted     and     set     LESSOPEN="lessopen.sh %s",     and
  1004.      LESSCLOSE="lessclose.sh %s %s".  More complex  LESSOPEN  and
  1005.      LESSCLOSE  scripts  may  be written to accept other types of
  1006.      compressed files, and so on.
  1007.  
  1008.      It is also possible to set up an input preprocessor to  pipe
  1009.      the file data directly to _l_e_s_s, rather than putting the data
  1010.      into a replacement file.  This avoids the need to decompress
  1011.      the  entire  file  before  starting  to  view  it.  An input
  1012.      preprocessor that works this way is called  an  input  pipe.
  1013.      An  input pipe, instead of writing the name of a replacement
  1014.      file on its standard output, writes the entire  contents  of
  1015.      the  replacement  file on its standard output.  If the input
  1016.      pipe does not write any characters on its  standard  output,
  1017.      then there is no replacement file and _l_e_s_s uses the original
  1018.      file, as normal.  To use an input pipe, make the first char-
  1019.      acter  in  the  LESSOPEN environment variable a vertical bar
  1020.      (|) to signify that the input preprocessor is an input pipe.
  1021.  
  1022.      For example, on many Unix systems,  this  script  will  work
  1023.      like the previous example scripts:
  1024.  
  1025.      lesspipe.sh:
  1026.           !# /bin/sh
  1027.           case "$1" in
  1028.           *.Z) uncompress -c $1  2>/dev/null
  1029.                ;;
  1030.           esac
  1031.  
  1032.      To use this script, put it where it can be executed and  set
  1033.      LESSOPEN="|lesspipe.sh  %s".   When an input pipe is used, a
  1034.      LESSCLOSE postprocessor can be used, but it is  usually  not
  1035.      necessary  since  there  is no replacement file to clean up.
  1036.      In this case, the replacement file name passed to the  LESS-
  1037.      CLOSE postprocessor is "-".
  1038.  
  1039.  
  1040. NATIONAL CHARACTER SETS
  1041.      There are three types of characters in the input file:
  1042.  
  1043.      normal characters
  1044.           can be displayed directly to the screen.
  1045.  
  1046.      control characters
  1047.           should not be displayed directly, but are  expected  to
  1048.           be  found in ordinary text files (such as backspace and
  1049.           tab).
  1050.  
  1051.  
  1052.  
  1053.                                                                16
  1054.  
  1055.  
  1056.  
  1057.  
  1058.  
  1059.  
  1060. LESS(1)                  USER COMMANDS                    LESS(1)
  1061.  
  1062.  
  1063.  
  1064.      binary characters
  1065.           should not be displayed directly and are  not  expected
  1066.           to be found in text files.
  1067.  
  1068.      A "character set" is simply a description of  which  charac-
  1069.      ters  are to be considered normal, control, and binary.  The
  1070.      LESSCHARSET environment variable may be  used  to  select  a
  1071.      character set.  Possible values for LESSCHARSET are:
  1072.  
  1073.      ascii
  1074.           The default  character  set.   BS,  TAB,  NL,  CR,  and
  1075.           formfeed  are control characters, all chars with values
  1076.           between 127 and 255 are binary, and all others are nor-
  1077.           mal.
  1078.  
  1079.      latin1
  1080.           Selects the ISO 8859/1 character set.  latin-1  is  the
  1081.           same  as  ASCII,  except characters between 161 and 255
  1082.           are treated as normal characters.
  1083.  
  1084.      dos  Selects a character set appropriate for MS-DOS.
  1085.  
  1086.      koi8-r
  1087.           Selects a Russian character set.
  1088.  
  1089.      next Selects a character set appropriate for NeXT computers.
  1090.  
  1091.      In special cases, it may be desired to tailor _l_e_s_s to use  a
  1092.      character  set other than the ones definable by LESSCHARSET.
  1093.      In this case, the environment variable  LESSCHARDEF  can  be
  1094.      used  to  define  a  character  set.   It should be set to a
  1095.      string where each character in  the  string  represents  one
  1096.      character  in  the character set.  The character "." is used
  1097.      for a normal character, "c" for control, and "b" for binary.
  1098.      A  decimal  number may be used for repetition.  For example,
  1099.      "bccc4b." would mean character 0 is binary, 1, 2 and  3  are
  1100.      control,  4,  5,  6  and 7 are binary, and 8 is normal.  All
  1101.      characters after the last are taken to be the  same  as  the
  1102.      last, so characters 9 through 255 would be normal.  (This is
  1103.      an example, and does  not  necessarily  represent  any  real
  1104.      character set.)
  1105.  
  1106.      This  table  shows  the  value  of  LESSCHARDEF   which   is
  1107.      equivalent to each of the possible values for LESSCHARSET:
  1108.  
  1109.           ascii     8bcccbcc18b95.b
  1110.           latin1    8bcccbcc18b95.33b.
  1111.           dos       8bcccbcc12bc5b95.b.
  1112.           koi8-r    8bcccbcc18b95.b128.
  1113.           next      8bcccbcc18b95.bb125.bb
  1114.  
  1115.  
  1116.  
  1117.  
  1118.  
  1119.                                                                17
  1120.  
  1121.  
  1122.  
  1123.  
  1124.  
  1125.  
  1126. LESS(1)                  USER COMMANDS                    LESS(1)
  1127.  
  1128.  
  1129.  
  1130.      If neither LESSCHARSET nor LESSCHARDEF is set, but your sys-
  1131.      tem  supports  the _s_e_t_l_o_c_a_l_e interface, _l_e_s_s will use setlo-
  1132.      cale to determine the  character  set.   setlocale  is  con-
  1133.      trolled  by  setting  the LANG or LC_CTYPE environment vari-
  1134.      ables.
  1135.  
  1136.      Control and binary  characters  are  displayed  in  standout
  1137.      (reverse  video).  Each such character is displayed in caret
  1138.      notation if possible (e.g. ^A for control-A).   Caret  nota-
  1139.      tion  is  used  only  if inverting the 0100 bit results in a
  1140.      normal printable character.   Otherwise,  the  character  is
  1141.      displayed  as  a  hex number in angle brackets.  This format
  1142.      can be changed by setting the LESSBINFMT  environment  vari-
  1143.      able.   LESSBINFMT may begin with a "*" and one character to
  1144.      select the display attribute:  "*k"  is  blinking,  "*d"  is
  1145.      bold,  "*u"  is underlined, "*s" is standout.  If LESSBINFMT
  1146.      does not begin with a "*", normal attribute is assumed.  The
  1147.      remainder  of  LESSBINFMT  is a string which may include one
  1148.      printf-style escape sequence (a % followed by x,  X,  o,  d,
  1149.      etc.).  For example, if LESSBINFMT is "*u[%x]", binary char-
  1150.      acters are displayed in underlined hexadecimal surrounded by
  1151.      brackets.   The  default  if  no  LESSBINFMT is specified is
  1152.      "*d<%X>".
  1153.  
  1154.  
  1155. PROMPTS
  1156.      The -P option allows  you  to  tailor  the  prompt  to  your
  1157.      preference.   The string given to the -P option replaces the
  1158.      specified prompt string.  Certain characters in  the  string
  1159.      are  interpreted  specially.  The prompt mechanism is rather
  1160.      complicated to provide flexibility, but  the  ordinary  user
  1161.      need not understand the details of constructing personalized
  1162.      prompt strings.
  1163.  
  1164.      A percent sign followed by a single  character  is  expanded
  1165.      according to what the following character is:
  1166.  
  1167.      %b_X  Replaced by the byte  offset  into  the  current  input
  1168.           file.   The  b is followed by a single character (shown
  1169.           as _X above) which specifies the line whose byte  offset
  1170.           is  to  be  used.   If the character is a "t", the byte
  1171.           offset of the top line in the display is used,  an  "m"
  1172.           means  use  the middle line, a "b" means use the bottom
  1173.           line, a "B" means use the line just  after  the  bottom
  1174.           line,  and a "j" means use the "target" line, as speci-
  1175.           fied by the -j option.
  1176.  
  1177.      %B   Replaced by the size of the current input file.
  1178.  
  1179.      %E   Replaced by the name of the  editor  (from  the  VISUAL
  1180.           environment  variable,  or the EDITOR environment vari-
  1181.           able if VISUAL is not defined).  See the discussion  of
  1182.  
  1183.  
  1184.  
  1185.                                                                18
  1186.  
  1187.  
  1188.  
  1189.  
  1190.  
  1191.  
  1192. LESS(1)                  USER COMMANDS                    LESS(1)
  1193.  
  1194.  
  1195.  
  1196.           the LESSEDIT feature below.
  1197.  
  1198.      %f   Replaced by the name of the current input file.
  1199.  
  1200.      %i   Replaced by the index of the current file in  the  list
  1201.           of input files.
  1202.  
  1203.      %l_X  Replaced by the line number of  a  line  in  the  input
  1204.           file.   The  line to be used is determined by the _X, as
  1205.           with the %b option.
  1206.  
  1207.      %L   Replaced by the line number of the  last  line  in  the
  1208.           input file.
  1209.  
  1210.      %m   Replaced by the total number of input files.
  1211.  
  1212.      %p_X  Replaced by the percent into the  current  input  file.
  1213.           The  line  used  is  determined by the _X as with the %b
  1214.           option.
  1215.  
  1216.      %s   Same as %B.
  1217.  
  1218.      %t   Causes any trailing spaces to be removed.  Usually used
  1219.           at the end of the string, but may appear anywhere.
  1220.  
  1221.      %x   Replaced by the name of the  next  input  file  in  the
  1222.           list.
  1223.  
  1224.      If any item is unknown (for example, the file size if  input
  1225.      is a pipe), a question mark is printed instead.
  1226.  
  1227.      The format of the prompt string can be changed depending  on
  1228.      certain  conditions.   A  question mark followed by a single
  1229.      character acts like an  "IF":  depending  on  the  following
  1230.      character,  a  condition  is evaluated.  If the condition is
  1231.      true, any characters following the question mark and  condi-
  1232.      tion  character, up to a period, are included in the prompt.
  1233.      If the condition is false, such characters are not included.
  1234.      A  colon  appearing between the question mark and the period
  1235.      can be used to establish an "ELSE": any  characters  between
  1236.      the  colon  and the period are included in the string if and
  1237.      only if the IF condition  is  false.   Condition  characters
  1238.      (which follow a question mark) may be:
  1239.  
  1240.      ?a   True if any characters have been included in the prompt
  1241.           so far.
  1242.  
  1243.      ?b_X  True if the byte offset of the specified line is known.
  1244.  
  1245.      ?B   True if the size of current input file is known.
  1246.  
  1247.      ?e   True if at end-of-file.
  1248.  
  1249.  
  1250.  
  1251.                                                                19
  1252.  
  1253.  
  1254.  
  1255.  
  1256.  
  1257.  
  1258. LESS(1)                  USER COMMANDS                    LESS(1)
  1259.  
  1260.  
  1261.  
  1262.      ?f   True if there is an input filename (that is,  if  input
  1263.           is not a pipe).
  1264.  
  1265.      ?l_X  True if the line number of the specified line is known.
  1266.  
  1267.      ?L   True if the line number of the last line in the file is
  1268.           known.
  1269.  
  1270.      ?m   True if there is more than one input file.
  1271.  
  1272.      ?n   True if this is the first prompt in a new input file.
  1273.  
  1274.      ?p_X  True if the percent into the current input file of  the
  1275.           specified line is known.
  1276.  
  1277.      ?s   Same as "?B".
  1278.  
  1279.      ?x   True if there is a next input file  (that  is,  if  the
  1280.           current input file is not the last one).
  1281.  
  1282.      Any characters other than the special ones  (question  mark,
  1283.      colon, period, percent, and backslash) become literally part
  1284.      of the  prompt.   Any  of  the  special  characters  may  be
  1285.      included  in  the  prompt  literally  by preceding it with a
  1286.      backslash.
  1287.  
  1288.      Some examples:
  1289.  
  1290.      ?f%f:Standard input.
  1291.  
  1292.      This prompt prints the filename,  if  known;  otherwise  the
  1293.      string "Standard input".
  1294.  
  1295.      ?f%f .?ltLine %lt:?pt%pt\%:?btByte %bt:-...
  1296.  
  1297.      This  prompt  would  print  the  filename,  if  known.   The
  1298.      filename is followed by the line number, if known, otherwise
  1299.      the percent if known, otherwise the byte  offset  if  known.
  1300.      Otherwise, a dash is printed.  Notice how each question mark
  1301.      has a matching period, and  how  the  %  after  the  %pt  is
  1302.      included literally by escaping it with a backslash.
  1303.  
  1304.      ?n?f%f .?m(file %i of %m) ..?e(END) ?x- Next\: %x..%t
  1305.  
  1306.      This prints the filename if this is the first  prompt  in  a
  1307.      file, followed by the "file N of N" message if there is more
  1308.      than one input file.  Then, if we are  at  end-of-file,  the
  1309.      string  "(END)"  is printed followed by the name of the next
  1310.      file, if there is one.  Finally,  any  trailing  spaces  are
  1311.      truncated.  This is the default prompt.  For reference, here
  1312.      are the defaults for  the  other  two  prompts  (-m  and  -M
  1313.      respectively).   Each  is  broken  into  two  lines here for
  1314.  
  1315.  
  1316.  
  1317.                                                                20
  1318.  
  1319.  
  1320.  
  1321.  
  1322.  
  1323.  
  1324. LESS(1)                  USER COMMANDS                    LESS(1)
  1325.  
  1326.  
  1327.  
  1328.      readability only.
  1329.  
  1330.      ?n?f%f .?m(file %i of %m) ..?e(END) ?x- Next\: %x.:
  1331.           ?pB%pB\%:byte %bB?s/%s...%t
  1332.  
  1333.      ?f%f .?n?m(file %i of %m) ..?ltline %lt?L/%L. :byte %bB?s/%s. .
  1334.           ?e(END) ?x- Next\: %x.:?pB%pB\%..%t
  1335.  
  1336.      And here is the default message produced by the = command:
  1337.  
  1338.      ?f%f .?m(file %i of %m) .?ltline %lt?L/%L. .
  1339.           byte %bB?s/%s. ?e(END) :?pB%pB\%..%t
  1340.  
  1341.      The prompt expansion features are also used for another pur-
  1342.      pose:  if an environment variable LESSEDIT is defined, it is
  1343.      used as the command to be executed when  the  v  command  is
  1344.      invoked.  The LESSEDIT string is expanded in the same way as
  1345.      the prompt strings.  The default value for LESSEDIT is:
  1346.  
  1347.           %E ?lm+%lm. %f
  1348.  
  1349.      Note that this expands to the editor name, followed by  a  +
  1350.      and  the  line  number,  followed by the file name.  If your
  1351.      editor does not accept  the  "+linenumber"  syntax,  or  has
  1352.      other  differences  in invocation syntax, the LESSEDIT vari-
  1353.      able can be changed to modify this default.
  1354.  
  1355.  
  1356. ENVIRONMENT VARIABLES
  1357.      COLUMNS
  1358.           Sets the number of columns on the screen.   Takes  pre-
  1359.           cedence  over  the  number  of columns specified by the
  1360.           TERM variable.  (But if you  have  a  windowing  system
  1361.           which  supports  TIOCGWINSZ  or  WIOCGETD,  the  window
  1362.           system's idea of the screen size takes precedence  over
  1363.           the LINES and COLUMNS environment variables.)
  1364.  
  1365.      EDITOR
  1366.           The name of the editor (used for the v command).
  1367.  
  1368.      HOME Name of the user's home directory (used to find a .less
  1369.           file).
  1370.  
  1371.      LANG Language for determining the character set.
  1372.  
  1373.      LC_CTYPE
  1374.           Language for determining the character set.
  1375.  
  1376.      LESS Flags which are passed to _l_e_s_s automatically.
  1377.  
  1378.      LESSBINFMT
  1379.           Format  for   displaying   non-printable,   non-control
  1380.  
  1381.  
  1382.  
  1383.                                                                21
  1384.  
  1385.  
  1386.  
  1387.  
  1388.  
  1389.  
  1390. LESS(1)                  USER COMMANDS                    LESS(1)
  1391.  
  1392.  
  1393.  
  1394.           characters.
  1395.  
  1396.      LESSCHARDEF
  1397.           Defines a character set.
  1398.  
  1399.      LESSCHARSET
  1400.           Selects a predefined character set.
  1401.  
  1402.      LESSCLOSE
  1403.           Command  line   to   invoke   the   (optional)   input-
  1404.           postprocessor.
  1405.  
  1406.      LESSEDIT
  1407.           Editor prototype string (used for the v command).   See
  1408.           discussion under PROMPTS.
  1409.  
  1410.      LESSHELP
  1411.           Name of the help file.
  1412.  
  1413.      LESSOPEN
  1414.           Command  line   to   invoke   the   (optional)   input-
  1415.           preprocessor.
  1416.  
  1417.      LINES
  1418.           Sets the number of lines on  the  screen.   Takes  pre-
  1419.           cedence  over the number of lines specified by the TERM
  1420.           variable.
  1421.  
  1422.      SHELL
  1423.           The shell used to execute the ! command, as well as  to
  1424.           expand filenames.
  1425.  
  1426.      TERM The type of terminal on which _l_e_s_s is being run.
  1427.  
  1428.      VISUAL
  1429.           The name of the editor (used for the v command).
  1430.  
  1431.  
  1432. SEE ALSO
  1433.      lesskey(1)
  1434.  
  1435.  
  1436. WARNINGS
  1437.      The = command and prompts (unless changed by -P) report  the
  1438.      line  number  of  the line at the top of the screen, but the
  1439.      byte and percent of the line at the bottom of the screen.
  1440.  
  1441.      If the :e command is used to name more than  one  file,  and
  1442.      one  of  the named files has been viewed previously, the new
  1443.      files may be entered into the list in an unexpected order.
  1444.  
  1445.  
  1446.  
  1447.  
  1448.  
  1449.                                                                22
  1450.  
  1451.  
  1452.  
  1453.  
  1454.  
  1455.  
  1456. LESS(1)                  USER COMMANDS                    LESS(1)
  1457.  
  1458.  
  1459.  
  1460.      On certain older terminals  (the  so-called  "magic  cookie"
  1461.      terminals),  search  highlighting  will  cause  an erroneous
  1462.      display.  On such terminals, search highlighting is disabled
  1463.      by default to avoid possible problems.
  1464.  
  1465.      In certain cases, when search highlighting is enabled and  a
  1466.      search  pattern begins with a ^, more text than the matching
  1467.      string may be highlighted.
  1468.  
  1469.  
  1470.  
  1471. COPYRIGHT
  1472.      Copyright (c) 1984,1985,1989,1994,1995  Mark Nudelman
  1473.  
  1474.  
  1475.  
  1476.  
  1477.  
  1478.  
  1479.  
  1480.  
  1481.  
  1482.  
  1483.  
  1484.  
  1485.  
  1486.  
  1487.  
  1488.  
  1489.  
  1490.  
  1491.  
  1492.  
  1493.  
  1494.  
  1495.  
  1496.  
  1497.  
  1498.  
  1499.  
  1500.  
  1501.  
  1502.  
  1503.  
  1504.  
  1505.  
  1506.  
  1507.  
  1508.  
  1509.  
  1510.  
  1511.  
  1512.  
  1513.  
  1514.  
  1515.                                                                23
  1516.  
  1517.  
  1518.  
  1519.